package com.distribution.system.manager.profitCondition.impl;

import com.distribution.common.utils.StringUtils;
import com.distribution.system.domain.bo.DefaultProfitConditionBO;
import com.distribution.system.manager.profitCondition.ProfitCondition;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

import java.math.BigDecimal;

/**
 * @author destinyhlp
 * 默认的条件判断
 * @date 2023/5/27 18:50
 */

@Slf4j
@Service
public class DefaultProfitConditionUp100 implements ProfitCondition<DefaultProfitConditionBO> {
    /**
     * 订单完成条件 分为： 激活、首冲50元、首冲100元3种。
     * 首冲100元：当调用订单刷新接口，status = 2 且 sc_money >= 100时，置为完成状态，各级代理佣金到账。
     */
    @Override
    public boolean condition(DefaultProfitConditionBO defaultProfitConditionBO) {
        if ("3".equals(defaultProfitConditionBO.getStatus())) {
            String scMoney = defaultProfitConditionBO.getScMoney();
            BigDecimal initialOffsetAmount = StringUtils.isEmpty(scMoney) ? new BigDecimal(0) : new BigDecimal(scMoney);
            return initialOffsetAmount.compareTo(new BigDecimal(100)) >= 0;
        }
        return false;
    }
}
